﻿$(function () {
    /*-----------------------------------------------AKjs_Config (全局设置）-------------------------------------------*/
    AKjs_Config({ //环境配置管理
        MaskStyle: ["style3", "opacity07"], //1.所有弹窗背景图案选择（样式style1~8）、2.遮挡层背景的透明度（opacity01~09）
        Responsive: true, //是否开启文字大小按屏幕尺寸自适应变化，考虑到兼容平板电脑建议开启 (开启 true, 停用 false）
        ButtonLink: true, //通过元素中加data-href属性的方式跳转界面, 建议开启路由功能后使用。(使用button超链接 true,不使用button超链接 false）
        animation: true, //是否开启元素里加动画参数的功能？（例：data-animation="{name: 'zoomIn', duration:1, delay: 0}"） 动画库：akjs.animate.css
        pluginPath: "./compress/", //功能插件文件所在的目录设置
        pluginClear: { //定期清理功能插件的缓存 【days=天数, hours=小时, minutes=分钟，seconds=秒数 （当前提供的四个参数中任意抽选一个设置时间清理功能插件的缓存。四个参数不能同时设置）】
            /*使用帮助：项目开发阶段建议使用秒数间隔清理缓存，项目正式上线后不经常改动插件所以建议使用天数间隔清理缓存。*/
            /*注意：清理缓存时按需引入的功能插件将重新网络请求所以会影响到页面加载速度。*/
            minutes: 10 //分钟
        }
    });
    AKjs_Include("js/data.js"); //Json数据引入

    /*-----------------------------------------------AKjs_Plugin 功能插件引入-------------------------------------------*/
    AKjs_Plugin("akjs.plugin.pc.min","css"); //引入压缩版的全部功能插件

    /*
    # 所有功能插件的中文说明：

        AKjs_AllChecked //全选功能
        AKjs_ChangeIcon //图标切换功能
        AKjs_ChangeInput //输入框值互换功能
        AKjs_Checkbox //复选框美化
        AKjs_ChooseList //按钮模式复选和单选功能
        AKjs_Circliful //圆形统计插件
        AKjs_Codeval //图片验证功能
        AKjs_Completer //自动完成输入功能
        AKjs_CountDown //倒计时功能
        AKjs_CountTo //数字动画效果
        AKjs_DateTime //日期和时间插件
        AKjs_Dialog //alert，confirm，prompt等弹出层功能
        AKjs_DropUpDown //列表展开和收起功能
        AKjs_Favorite //点赞或收藏功能
        AKjs_Filterizr //筛选及排序插件
        AKjs_Flying //加入购物车飞入动画效果
        AKjs_Form //表单提交相关效果
        AKjs_GetVerifyCode //手机短信验证码认证功能
        AKjs_IntlTelInput //国际区号选择功能
        AKjs_Lazyload //图片加载时有动画效果
        AKjs_Loader //Loading效果功能
        AKjs_Menu //菜单控制功能 (Router专用)
        AKjs_MenuList //导航状态控制功能 (Router专用)
        AKjs_NavMenu //导航菜单效果插件 (Router专用)
        AKjs_Marquee //上下左右滚动插件
        AKjs_MultiDate //多功能日期和时间插件
        AKjs_NowTime //获取当前时间的功能
        AKjs_Paginator //分页插件
        AKjs_PassLevel //密码安全等级插件
        AKjs_PickupTime //选择时间插件
        AKjs_Popupwin //弹窗功能
        AKjs_PortraitImage //头像上传功能
        AKjs_PreviewImage //同时上传多个图片的功能
        AKjs_ProductPhoto //产品联播图功能
        AKjs_Progress //进度条插件
        AKjs_QRcode //二维码生成插件
        AKjs_Radio //单选框美化
        AKjs_Range //滑块功能插件
        AKjs_Ratyli //星级评价功能
        AKjs_SelectOption //pc端专用select下拉框插件
        AKjs_Slider //欢迎页和联播图功能
        AKjs_SnInput //输入支付密码功能
        AKjs_Spinner //数量控制功能
        AKjs_StepOrder //步骤插件
        AKjs_Substring //输入框里输入的数字强行转换为人民币格式的插件
        AKjs_Switch //开关按钮美化
        AKjs_Tabs //TABS切换内容功能
        AKjs_Template //模板引擎插件
        AKjs_Textarea //多行输入框实时查询字符数的功能
        AKjs_TimeAxis //时间轴展示功能
        AKjs_TimeClock //时钟功能
        AKjs_Typeahead //模糊搜索功能
        AKjs_TypeIt //文字打字效果
        AKjs_Validate //表单校验插件
        AKjs_Viewer //图片放大预览功能
        AKjs_Vticker //列表垂直滚动插件
        AKjs_WebToast //提示框效果
        AKjs_MediaElement //视频播放器
        AKjs_FullScreen //全屏功能
        AKjs_ElementControl //元素控制插件
        AKjs_ToolTip //提示工具插件
        AKjs_Mkinfinite //动画效果联播图插件
        AKjs_HoverBorder //布局边框动画插件
        AKjs_GoTop //返回页面顶部插件
        AKjs_ImgSubject //图片列表滑动效果
        AKjs_HotspotMap //图片热点注释和提示工具
    */

    /*-----------------------------------------------AKjs_Typeahead-------------------------------------------*/
    //搜索自动完成Json数据
    var json_searchData = [
        {
            id: 1,
            name: "手机Iphone",
            text: "약 866426개의 상품"
        },
        {
            id: 2,
            name: "手机苹果",
            text: "약 186426개의 상품"
        },
        {
            id: 3,
            name: "手机三星",
            text: "약 8246개의 상품"
        },
        {
            id: 4,
            name: "手机屏幕保护",
            text: "약 7826개의 상품"
        },
        {
            id: 5,
            name: "手机架",
            text: "약 866426개의 상품"
        },
        {
            id: 6,
            name: "手机壳",
            text: "약 866개의 상품"
        },
        {
            id: 7,
            name: "手机投影",
            text: "약 1826개의 상품"
        },
        {
            id: 8,
            name: "手机换电池",
            text: "약 866426개의 상품"
        },
        {
            id: 9,
            name: "手机键盘",
            text: "약 36426개의 상품"
        },
        {
            id: 10,
            name: "手机麦克风",
            text: "약 566426개의 상품"
        },
        {
            id: 11,
            name: "手机耳机",
            text: "약 16426개의 상품"
        },
        {
            id: 12,
            name: "手机架",
            text: "약 426개의 상품"
        }
    ];
    $(".plug_Typeahead").AKjs_Typeahead({
        items: 20, //最多显示的数据
        boxsize:[$(".plug_Typeahead").parents("fieldset").outerWidth()-8,"30.5rem"], //电脑端展开后的下拉框大小设置 ["宽度","高度"]
        boxClass: "h_au abs minus_ml_4px", //下拉框样式设置
        source: json_searchData, //Json获取data数据(data.js)
        CallBack:function(flag,self,ele){ //回调获取被展开后显示的元素
            if(flag) {
                ele.addClass("border4 bor_theme bor_top_none");
                if (ele.children("ol").length < 1) {
                    ele.append(
                        "<div class=\"border bor_gray_ddd rel bg_white ovh list_h_24rem\">\n" +
                        "   <p class=\"fl rel ml_3 w_44 text_al_c pointer text_12rem c_theme_blue bor_bottom3 bor_theme_blue\">최근검색어</p>\n" +
                        "   <p class=\"fl rel ml_3 w_44 text_al_c pointer text_12em\">인기검색어</p>\n" +
                        "</div>\n" +
                        "<ol class=\"scrollbar ova_y h_100\">\n" +
                        "</ol>"
                    );
                    var _html1 = "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"BJ\"><span class='fl'>화장품</span><span class='fr c_gray_999'>2018.11.30</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"SH\"><span class='fl'>뷰티</span><span class='fr c_gray_999'>2018.11.30</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"GZ\"><span class='fl'>MCM가방</span><span class='fr c_gray_999'>2018.11.30</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"SZ\"><span class='fl'>겨울옷</span><span class='fr c_gray_999'>2018.11.30</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"QD\"><span class='fl'>반지</span><span class='fr c_gray_999'>2018.11.30</span></li>\n";
                    var _html2 = "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"BJ\"><em class='fl mr_03em'>1.</em><span class='fl'>SKii</span><span class='fr c_gray_999'>52454 회</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"SH\"><em class='fl mr_03em'>2.</em><span class='fl'>IPO뷰티</span><span class='fr c_gray_999'>51454 회</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"GZ\"><em class='fl mr_03em'>3.</em><span class='fl'>MCM가방</span><span class='fr c_gray_999'>51358 회</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"SZ\"><em class='fl mr_03em'>4.</em><span class='fl'>밥가마</span><span class='fr c_gray_999'>50451 회</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"SZ\"><em class='fl mr_03em'>5.</em><span class='fl'>화장품</span><span class='fr c_gray_999'>49452 회</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"SZ\"><em class='fl mr_03em'>6.</em><span class='fl'>남성신발</span><span class='fr c_gray_999'>42453 회</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"SZ\"><em class='fl mr_03em'>7.</em><span class='fl'>남성코트</span><span class='fr c_gray_999'>33457 회</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"SZ\"><em class='fl mr_03em'>8.</em><span class='fl'>겨울옷</span><span class='fr c_gray_999'>32451 회</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"SZ\"><em class='fl mr_03em'>9.</em><span class='fl'>세제용품</span><span class='fr c_gray_999'>22456 회</span></li>\n" +
                        "<li class=\"bor_bottom_dashed bor_gray_ddd\" data-value=\"QD\"><em class='fl mr_03em'>10.</em><span class='fl'>비비크림</span><span class='fr c_gray_999'>12454 회</span></li>\n";
                    ele.find("ol").html(_html1);
                    ele.children("div").children("p").click(function () {
                        if (!$(this).hasClass("c_theme_blue")) {
                            ele.children("div").children("p").removeClass("c_theme_blue bor_bottom3 bor_theme_blue");
                            $(this).addClass("c_theme_blue bor_bottom3 bor_theme_blue");
                            if ($(this).index() > 0) {
                                ele.find("ol").html(_html2);
                                ele.find("ol li").eq(0).addClass("c_theme text_bold");
                            } else {
                                ele.find("ol").html(_html1);
                            }
                        }
                    });
                    ele.children("ol").find("li").bind("click", function() {
                        self.val($(this).children("span.fl").text());
                    });
                }
            }
        },
        showCallBack:function(ele){ //回调获取被展开后显示的元素
            //console.log("搜索区域的元素被显示了。您可以对该元素进行操作。");
            //console.log(ele);
        },
        itemSelected: function (ele,id,name) { //通过回调获取点击选择后的值（ele：当前元素，id：数据编号，name：选择的值）
            //console.log(ele);
            //console.log("id: "+id+", name: "+name);
        }
    });

    /*-----------------------------------------------AKjs_Tabs-------------------------------------------*/
    $(".plug_tabs").AKjs_Tabs({
        curDisplay: 1, //当前显示哪张
        autoPlay: false, //自动播放 (true/false)
        playDelay: 1000, //切换Tabs延迟时间
        boxheight: $(".plug_catedom").outerHeight(), //切换内容区域的高度设置px （不使用高度：false）
        navlength: 1, //切换导航的数量设置（文字屏幕对齐）
        fullclass: "bg_theme_blue_sub c_white", //被选中状态的class
        emptyclass: "c_theme_blue_sub", //未选中状态的class
        mouse: "hover", //鼠标事件 (click/hover)
        touchmode : false, //是否开启触屏滑动切换功能 (true/false)
        changeMethod: "vertical", //切换方式 (default/vertical/horizontal/opacity)
        callback: function(ele,index) { //初始化回调入口
            $(".plug_catedom").not(".cate_none").removeClass("dis_none");
            $(".plug_catedom").find("li").removeClass("bg_theme_blue_sub c_white");
            $(".plug_slider").css({
                "max-height": $(".plug_catedom").outerHeight()
            });
        },
        changeback: function (ele,index) { //Tab切换回调入口
            console.log(index);
        }
    });

    /*-----------------------------------------------AKjs_ElementControl-------------------------------------------*/
    $(".plug_cate").AKjs_ElementControl({
        ControlDom: $(".plug_catedom"), //被控制的元素设置
        ControlType: "click", //控制方式设置 (click, hover, scroll)
        callback:function(ele,self){ //初始化回调入口 （ele:被动元素，self:主动元素）
            ele.AKjs_ElementControl({
                ControlDom: ele.next("article"), //被控制的元素设置
                ControlType: "hover", //控制方式设置 (click, hover, scroll)
                callback:function(ele,self) { //初始化回调入口 （ele:被动元素，self:主动元素）
                    ele.AKjs_ElementControl({
                        ControlType: "hover", //控制方式设置 (click, hover, scroll)
                        hoverback: function(ele,self,flag) { //控制方式hover的回调入口 （被动元素, 主动元素, 滑动状态）
                            if (flag) {
                                self.removeClass("dis_none");
                            } else {
                                self.addClass("dis_none");
                            }
                        }
                    });
                },
                hoverback: function(ele,self,flag) { //控制方式hover的回调入口 （被动元素, 主动元素, 滑动状态）
                    if (flag) {
                        ele.removeClass("dis_none");
                    } else {
                        ele.addClass("dis_none");
                    }
                }
            });
        },
        clickback: function(ele,self) { //控制方式click的回调入口 （被动元素, 主动元素）
            if (ele.hasClass("dis_none")) {
                self.children("i.ml_03rem").addClass("icon-ln_xiangshang").removeClass("icon-ln_xiangxia");
                ele.slideDown();
                ele.removeClass("dis_none");
            } else {
                self.children("i.ml_03rem").removeClass("icon-ln_xiangshang").addClass("icon-ln_xiangxia");
                ele.slideUp();
                setTimeout(function () {
                    ele.addClass("dis_none");
                },500);
            }
        }
    });
    $(window).AKjs_ElementControl({
        ControlType: 'scroll', //控制方式设置 (click, hover, scroll)
        ControlDom: $('header').not(".ak-nofix"), //被控制的元素设置
        scrollTop: $('header').outerHeight(), //滚动条高度参数设置 （ControlType参数scroll才能生效）
        callback:function(ele,self){ //初始化回调入口 （ele:被动元素，self:主动元素）
        },
        clickback: function(ele,self) { //控制方式click的回调入口 （被动元素, 主动元素）
        },
        hoverback: function(ele,self,flag) { //控制方式hover的回调入口 （被动元素, 主动元素, 滑动状态）
        },
        scrollback:function(ele,self,ThisScrollTop,OptScrollTop){ //控制方式scroll的回调入口 （被动元素, 主动元素，当前滚动的高度，滚动条高度参数）
            if ($(".ak-nofix").length === 0) {
                if ($(".wrap").outerHeight() >= 1200) {
                    var mar_top = 190;
                } else {
                    var mar_top = 176;
                }
                if (ThisScrollTop > OptScrollTop) {
                    ele.addClass("fix top_0 w_100 zindex_3 animated slideInDown ani_05s");
                    ele.find("div.h_24rem").addClass("dis_none_im");
                    ele.find("div.abs.h_8rem").addClass("dis_none_im");
                    ele.find("nav.h_4rem").removeClass("mt_8rem");
                    ele.find("article.h_34_em.pt_08rem").addClass("dis_none");
                    $("main").css({
                        "margin-top": mar_top+"px"
                    });
                    $(".plug_catedom").slideUp();
                    $(".plug_catedom").next("article").addClass("dis_none");
                    $(".plug_cate").children("i.ml_03rem").removeClass("icon-ln_xiangshang").addClass("icon-ln_xiangxia");
                    setTimeout(function () {
                        $(".plug_catedom").addClass("dis_none");
                    },500);
                } else {
                    ele.removeClass("fix top_0 w_100 zindex_3 animated slideInDown ani_05s");
                    ele.find("div.h_24rem").removeClass("dis_none_im");
                    ele.find("div.abs.h_8rem").removeClass("dis_none_im");
                    ele.find("nav.h_4rem").addClass("mt_8rem");
                    $("main").css({
                        "margin-top": 0
                    });
                    $(".plug_catedom").not(".cate_none").slideDown();
                    $(".plug_catedom").find("li").removeClass("bg_theme_blue_sub c_white").addClass("c_theme_blue_sub");
                    setTimeout(function () {
                        $(".plug_catedom").not(".cate_none").removeClass("dis_none");
                    },500);
                    $(".plug_cate").not(".cate_none").children("i.ml_03rem").addClass("icon-ln_xiangshang").removeClass("icon-ln_xiangxia");
                }
            }
        }
    });

    /*-----------------------------------------------AKjs_Lazyload-------------------------------------------*/
    $("img[data-lazyload]").AKjs_Lazyload({ //对所有的图片懒加载
        scroll: $(window), //滚动区域的容器
        Img_Effect: "fadeIn", //图片加载动画效果
        Img_LoadStyle: "loading01", //图片加载之前显示的Loading效果 （loading01~05）注：Img_Effect，Img_LoadStyle，Img_Error 三个参数是图片懒加载专用参数；
        Img_Error: "./upload/noimage.png", //图片加载失败时默认显示图片URL
        Callback: function(ele) { //初始化回调入口
            //console.log(ele);
        },
        Scrollback: function(ele,scroll) { //页面滚动后的回调
            //console.log(ele);
        }
    });

    /*-----------------------------------------------AKjs_ToolTip-------------------------------------------*/
    $("*[title]").AKjs_ToolTip({
        mouse: "hover", //鼠标操作类型 (hover,click)
        boxClass: "border bor_black bg_black05 c_white",  //弹出层样式class设置
        arrowSize: "10", //箭头大小设置 （单位默认是px）
        arrowColor:"c_gray_333", //箭头颜色class设置
        arrowPosition: "top", //弹出层显示位置 (top,bottom)
        callback: function(self,box,option,setting) { //弹出层显示后的回调（注：元素中有title属性时无需当前回调）
            box.parent().addClass("line_h_2rem");
            box.parent().children("i").addClass("minus_mb_08rem");
            //setting(); //考虑数据加载先后顺序，该方法数据加载完后需要再次执行。
        }
    });

    /*-----------------------------------------------AKjs_Responsive-------------------------------------------*/
    AKjs_Responsive({ //实时监听窗口大小变化的功能
        resizeCallback: function (resize,deviceW, deviceH, viewportW, viewportH) {
            //console.log("屏幕宽度: "+deviceW);
            //console.log("屏幕高度: "+deviceH);
            //console.log("实时窗口宽度: "+viewportW);
            //console.log("实时窗口高度: "+viewportH);
            if (viewportW < 1280 || deviceW < 1280) {
                $("aside.fix").hide();
            } else {
                $("aside.fix").show();
            }
        }
    });

    /*-----------------------------------------------其他脚本处理区域-------------------------------------------*/
    $("img").addClass("press");
    $("img").parent().addClass("img_press").bind("contextmenu",function(e){
        return false;
    });
    $("img[data-lazyload]").each(function () {
        var _img = $(this);
        setTimeout(function () {
            _img.attr("src",_img.attr("data-lazyload"));
        },500);
    });
    if ($("html").scrollTop() > $("header").outerHeight()) {
        $(".plug_catedom").hide();
    }
    if ($(".wrap").outerHeight() >= 1200) {
        var head_mar_top = 190;
    } else {
        var head_mar_top = 176;
    }
    $(document).mousemove(function(){
        if ($(".plug_tabs > article").hasClass("dis_none")) {
            $(".plug_catedom").find("li").removeClass("bg_theme_blue_sub c_white").addClass("c_theme_blue_sub");
        }
    });
    $(".plug_storey li").each(function () {
        $(this).click(function () {
            $("html").animate({
                scrollTop: $("main").find("section.w_100.bg_brown").eq($(this).index()).offset().top - $("header").outerHeight() + head_mar_top
            }, 300);
        });
    });
    $(document).ready(function(){
        if (AKjs_Params(1) != undefined && AKjs_Params(1).indexOf("cate") != -1) {
            $("html").animate({
                scrollTop: $("main").find("section.w_100.bg_brown").eq(AKjs_Params(1).substr(AKjs_Params(1).length-1,1)).offset().top - $("header").outerHeight() + head_mar_top
            }, 300);
        }
    });
    $(window).bind('hashchange', function () {
        if (AKjs_Params(1) != undefined && AKjs_Params(1).indexOf("cate") != -1) {
            $("html").animate({
                scrollTop: $("main").find("section.w_100.bg_brown").eq(AKjs_Params(1).substr(AKjs_Params(1).length-1,1)).offset().top - $("header").outerHeight() + head_mar_top
            }, 300);
        }
    });
    $(".plug_BackTop").click(function () {
        $("html").animate({
            scrollTop: 0
        }, 500);
    });
});